class Solution(object):
    
    def maxProfit(self, prices):
        """
        方法：一次遍历寻找最大利润
        
        Args:
            prices: List[int], 每天的股票价格列表
            
        Returns:
            int: 可以获得的最大利润，如果不能获得利润则返回0
            
        Time: O(n)，其中 n 是价格列表的长度，只需要遍历一次数组
        
        Space: O(1)，只使用了两个变量来存储最小价格和最大利润
        """
        minprice = int(1e9)
        maxprofit = 0
        for price in prices:
            maxprofit = max(price - minprice, maxprofit)
            minprice = min(price, minprice)
        return maxprofit
        